package com.ruoyi.wxarea.service.impl;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.wxarea.mapper.AreaMapper;
import com.ruoyi.wxarea.pojo.Area;
import com.ruoyi.wxarea.service.IAreaService;
import com.ruoyi.wxcommon.common.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * <p>
 * 地区 服务实现类
 * </p>
 *
 * @author 凡哥哥
 * @since 2024-05-06
 */
@Service
public class AreaServiceImpl extends ServiceImpl<AreaMapper, Area> implements IAreaService {
    @Autowired
    private AreaMapper areaMapper;
    @Override
    public Result getAreaName(Integer pageIndex, Integer pageSize, String name) {
        Page<Area> page = new Page<>(pageIndex,pageSize);
        QueryWrapper<Area> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("is_delete",1);
        queryWrapper.eq("atype",1);
        queryWrapper.like("name",name);
        Page<Area> page1 = this.page(page, queryWrapper);
        return Result.SUCCESS(page1);
    }

    @Override
    public Result userAreaInfo(Integer id) {
        return Result.SUCCESS(this.getById(id));
    }



    /**
     * 查询校园地区管理
     *
     * @param pkId 校园地区管理主键
     * @return 校园地区管理
     */
    @Override
    public Area selectAreaByPkId(Long pkId)
    {
        return areaMapper.selectAreaByPkId(pkId);
    }

    /**
     * 查询校园地区管理列表
     *
     * @param area 校园地区管理
     * @return 校园地区管理
     */
    @Override
    public List<Area> selectAreaList(Area area)
    {
        return areaMapper.selectAreaList(area);
    }

    /**
     * 新增校园地区管理
     *
     * @param area 校园地区管理
     * @return 结果
     */
    @Override
    public int insertArea(Area area)
    {
        area.setCreateTime(DateUtils.getNowDate());
        return areaMapper.insertArea(area);
    }

    /**
     * 修改校园地区管理
     *
     * @param area 校园地区管理
     * @return 结果
     */
    @Override
    public int updateArea(Area area)
    {
        return areaMapper.updateArea(area);
    }

    /**
     * 批量删除校园地区管理
     *
     * @param pkIds 需要删除的校园地区管理主键
     * @return 结果
     */
    @Override
    public int deleteAreaByPkIds(Long[] pkIds)
    {
        return areaMapper.deleteAreaByPkIds(pkIds);
    }

    /**
     * 删除校园地区管理信息
     *
     * @param pkId 校园地区管理主键
     * @return 结果
     */
    @Override
    public int deleteAreaByPkId(Long pkId)
    {
        return areaMapper.deleteAreaByPkId(pkId);
    }
}
